package com.wongoing.util;

import java.util.ArrayList;
import java.util.List;

import org.apache.poi.ss.formula.functions.T;

/**
 * 功能说明：公共工具类
 * 修改说明：
 * @author zhenglibing
 * @date 2017-8-10 上午9:43:28
 * @version V0.1
 */
public class CommonUtils {
	
	/**
	 * 功能说明：通过指定的分隔符连接集合中的字符串
	 * 修改说明：
	 * @author zhenglibing
	 * @date 2017-8-10 上午9:46:51
	 * @param list 字符串集合
	 * @param splitChar 分隔符
	 * @return 返回串联后的字符串
	 */
	public static String join(List<String> list, String splitChar) {
		if (null != list && !list.isEmpty()) {
			StringBuffer sb = new StringBuffer();
			for(int i=0;i < list.size() -1;i++) {
				sb.append(list.get(i)).append(splitChar);
			}
			sb.append(list.get(list.size() -1 ));
			return sb.toString();
		}
		else {
			return "";
		}
	}
	/**
	 * 功能说明：通过指定的分隔符和修饰符连接集合中的字符串
	 * 修改说明：
	 * @author zhenglibing
	 * @date 2017-8-10 上午11:46:55
	 * @param list 字符串集合
	 * @param splitChar 分隔符
	 * @param modifier 修饰符，项的前后缀
	 * @return
	 */
	public static String join(List<String> list, String splitChar, String modifier) {
		if (null != list && !list.isEmpty()) {
			StringBuffer sb = new StringBuffer();
			for(int i=0;i < list.size() -1;i++) {
				sb.append(modifier).append(list.get(i)).append(modifier).append(splitChar);
			}
			sb.append(modifier).append(list.get(list.size() -1 )).append(modifier);
			return sb.toString();
		}
		else {
			return "";
		}
	}
	
	
	/**
	 * 功能说明：
	 * 修改说明：
	 * @author 吴兆强
	 * @date 2017年10月25日 下午3:57:04
	 * @param str 需补位的字符串
	 * @param fill 填补的字符串
	 * @param length 指定位数
	 * @return
	 */
	public static String fillStringBeforeString(String str ,String fill, int length) {
		if(str.length() < length) {
			StringBuilder sb = new StringBuilder();
			for(int i = 0; i < length - str.length() ; i++) {
				sb.append(fill);
			}
			  sb.append(str);
              return sb.toString();
		}else {
			return str;
		}
	}
	
	/**
	 * 功能说明：按字符串位数补0
	 * 修改说明：
	 * @author 吴兆强
	 * @date 2017年10月25日 下午3:47:37
	 * @param str
	 * @param length
	 * @return
	 */
	public static String fillZeroBeforeString(String str , int length) {
		return fillStringBeforeString(str,"0",length);
	}


}
